#include <stdio.h>

char * std(char str[]) {
    // 找到第一个非 '0' 字符的位置
    char *p = str;
    while (*p == '0') {
        p++;
    }

    // 如果字符串全是 '0'，则返回 "0"
    if (*p == '\0') {
        return "0";
    }

    // 返回去掉前导 '0' 后的字符串指针
    return p;
}

int main() {
    char str1[] = "00012345";
    char str2[] = "0000000";
    char str3[] = "12345000";

    printf("原字符串: %s\n", str1);
    printf("去掉前导0后: %s\n", std(str1));

    printf("原字符串: %s\n", str2);
    printf("去掉前导0后: %s\n", std(str2));

    printf("原字符串: %s\n", str3);
    printf("去掉前导0后: %s\n", std(str3));

    return 0;
}
